home *** CD-ROM | disk | FTP | other *** search
- package com.extensibility.xml;
-
- import com.extensibility.xml.dt.DataType;
- import com.extensibility.xml.dt.DataTypeEnumeration;
- import com.extensibility.xml.dt.DataTypeFactory;
- import com.extensibility.xml.dt.DataTypeIntf;
- import java.io.IOException;
- import java.io.Writer;
- import java.util.Enumeration;
- import java.util.Hashtable;
-
- public class XSDLFlavor extends BaseFlavor {
- public static final String NAME = "xsd";
- public static final String[] XSD_ALL_TYPES;
- public static final String[] XSD_OTHER_TYPES;
- public static final String[] XSD_SIMPLE_TYPES;
- public static final String[] XSD_ATTR_TYPES;
- static Hashtable xsdSourceNames;
-
- XSDLFlavor(SchemaIntf var1) {
- super(var1);
- }
-
- public String getFlavorName() {
- return "xsd";
- }
-
- public boolean isSupported(Class var1) {
- return !var1.equals(Class.forName("com.extensibility.xml.GeneralEntityDeclaration")) && !var1.equals(Class.forName("com.extensibility.xml.InternalGEDeclaration")) && !var1.equals(Class.forName("com.extensibility.xml.ExternalGEDeclaration")) && !var1.equals(Class.forName("com.extensibility.xml.ParameterEntityDeclaration")) && !var1.equals(Class.forName("com.extensibility.xml.InternalPEDeclaration")) && !var1.equals(Class.forName("com.extensibility.xml.ExternalPEDeclaration"));
- }
-
- public void parse(URI var1, URI var2, int var3, Object var4) throws IOException {
- (new XSDLReader(super.schema)).parse(var1, var2);
- }
-
- public void write(Writer var1) throws IOException {
- this.write(var1, super.schema.getURI());
- }
-
- public void write(Writer var1, URI var2) throws IOException {
- (new XSDLWriter(super.schema, var2)).writeDocument(var1);
- }
-
- public String getSourcePreview(BaseDeclaration var1) {
- return (new XSDLWriter(super.schema)).getSourcePreview(var1);
- }
-
- public void checkForErrors(BaseDeclaration var1) {
- super.checkForErrors(var1);
- }
-
- public boolean isSupported(String var1) {
- return !var1.equals("GESTALT_OPEN_CONTENT") && !var1.equals("GESTALT_LOCAL_TAG") && !var1.equals("GESTALT_MIN_MAX_OCCURS") && !var1.equals("GESTALT_MULTI_INSTANCE_MODULES") && !var1.equals("GESTALT_NMTOKEN_ENUM_REQUIRED") && !var1.equals("GESTALT_REUSABLE_CONTENTMODEL") && !var1.equals("GESTALT_REUSABLE_ATTRIBUTEGROUP") && !var1.equals("GESTALT_FACET_MINLENGTH") && !var1.equals("GESTALT_FACET_LENGTH") && !var1.equals("GESTALT_FACET_ENCODING") && !var1.equals("GESTALT_FACET_PERIOD") && !var1.equals("GESTALT_FACET_PATTERN") && !var1.equals("GESTALT_FACET_DECIMALS") && !var1.equals("GESTALT_FACET_DIGITS") && !var1.equals("GESTALT_FACET_MIN") && !var1.equals("GESTALT_FACET_MAX") && !var1.equals("GESTALT_FACET_MINEX") && !var1.equals("GESTALT_FACET_MAXEX") && !var1.equals("GESTALT_FACET_MAXLENGTH") ? super.isSupported(var1) : true;
- }
-
- public DataTypeEnumeration getAllTypes() {
- return DataTypeFactory.getTheseTypes(XSD_ALL_TYPES);
- }
-
- public DataTypeEnumeration getSimpleTypes() {
- return DataTypeFactory.getTheseTypes(XSD_SIMPLE_TYPES);
- }
-
- public DataTypeEnumeration getPrimitiveTypes() {
- return DataTypeFactory.getTheseTypes(XSD_ATTR_TYPES);
- }
-
- public DataTypeEnumeration getOtherTypes() {
- Enumeration var1 = super.schema.getDeclarations(Class.forName("com.extensibility.xml.DataTypeDeclaration"));
- return new 1.XSDDataTypeEnum((XSDLFlavor)null, var1);
- }
-
- private static void loadXsdSourceNames() {
- xsdSourceNames = new Hashtable();
-
- for(int var0 = 0; var0 < XSD_ALL_TYPES.length; ++var0) {
- xsdSourceNames.put(BaseFlavor.getDisplay("xsd", XSD_ALL_TYPES[var0]), XSD_ALL_TYPES[var0]);
- }
-
- }
-
- public boolean isKnownDisplay(String var1) {
- if (xsdSourceNames == null) {
- loadXsdSourceNames();
- }
-
- String var2 = (String)xsdSourceNames.get(var1);
- return var2 == null ? false : DataTypeFactory.isKnown(var2);
- }
-
- public DataType createDataTypeFromDisplay(String var1) {
- if (xsdSourceNames == null) {
- loadXsdSourceNames();
- }
-
- String var2 = (String)xsdSourceNames.get(var1);
- if (var2 == null) {
- var2 = var1;
- }
-
- return DataTypeFactory.createDataType(var2);
- }
-
- public URI getSchemaLoc(NamespaceDeclaration var1) {
- URI var2 = var1.getSchemaLoc();
- if (var2 != null) {
- return var2;
- } else {
- String var3 = var1.getNamespace();
- return var3 == null ? null : new URI(var3);
- }
- }
-
- static {
- XSD_ALL_TYPES = new String[]{DataTypeIntf.STRING, DataTypeIntf.INT, DataTypeIntf.DECIMAL, DataTypeIntf.BOOLEAN, DataTypeIntf.DATETIME, DataTypeIntf.DATE, DataTypeIntf.TIME, DataTypeIntf.URI, DataTypeIntf.ID, DataTypeIntf.IDREF, DataTypeIntf.IDREFS, DataTypeIntf.ENTITY, DataTypeIntf.ENTITIES, DataTypeIntf.NMTOKEN, DataTypeIntf.NMTOKENS, DataTypeIntf.NOTATION, DataTypeIntf.R4, DataTypeIntf.R8, DataTypeIntf.BINBASE64};
- XSD_OTHER_TYPES = new String[]{""};
- XSD_SIMPLE_TYPES = new String[]{DataTypeIntf.STRING, DataTypeIntf.INT, DataTypeIntf.DECIMAL, DataTypeIntf.BOOLEAN, DataTypeIntf.DATETIME, DataTypeIntf.DATE, DataTypeIntf.TIME, DataTypeIntf.URI, DataTypeIntf.R4, DataTypeIntf.R8, DataTypeIntf.BINBASE64};
- XSD_ATTR_TYPES = new String[]{DataTypeIntf.STRING, DataTypeIntf.ID, DataTypeIntf.IDREF, DataTypeIntf.IDREFS, DataTypeIntf.ENTITY, DataTypeIntf.ENTITIES, DataTypeIntf.NOTATION, DataTypeIntf.NMTOKEN, DataTypeIntf.NMTOKENS};
- xsdSourceNames = null;
- }
- }
-